#ifndef ACTIONMANAGER_H
#define ACTIONMANAGER_H

#include <QObject>

class QAction;

class Command
{
public:
    QAction * action;
    QList<int> context;
};

class ActionManager : public QObject
{
    Q_OBJECT
public:
    explicit ActionManager(QObject *parent = 0);

    void addAction(QAction * a, const QList<int> &context = QList<int>());
    void removeAction(QAction * a);

public slots:
    void contextChanged(const QList<int> &context);

private:
    QList<Command> m_commands;

};

#endif // ACTIONMANAGER_H
